package com.tudouji.project.flow.mapper;

import com.flow.service.pojo.flow.FlowTempNode;
import com.tudouji.project.flow.domain.Flowtempnode;

import java.util.List;

/**
 * 流程节点Mapper接口
 *
 * @author wf
 * @date 2021-04-01
 */
public interface FlowtempnodeMapper
{
    /**
     * 查询流程节点
     *
     * @param guid 流程节点ID
     * @return 流程节点
     */
    public Flowtempnode selectFlowtempnodeById(String guid);

    /**
     * 通过id查询流程节点
     * @param id
     * @return
     */
    FlowTempNode selectFlowtempnodeByid(Long id);


    /**
     * 查询流程节点列表
     *
     * @param flowtempnode 流程节点
     * @return 流程节点集合
     */
    public List<FlowTempNode> selectFlowtempnodeList(FlowTempNode flowtempnode);

    /**
     * 新增流程节点
     *
     * @param flowtempnode 流程节点
     * @return 结果
     */
    public int insertFlowtempnode(Flowtempnode flowtempnode);


    int insertFlowTempnode(FlowTempNode flowtempnode);

    /**
     * 修改流程节点
     *
     * @param flowtempnode 流程节点
     * @return 结果
     */
    public int updateFlowtempnode(Flowtempnode flowtempnode);

    int updateFlowTempnode(FlowTempNode flowtempnode);

    /**
     * 删除流程节点
     *
     * @param guid 流程节点ID
     * @return 结果
     */
    public int deleteFlowtempnodeById(String guid);

    /**
     * 批量删除流程节点
     *
     * @param guids 需要删除的数据ID
     * @return 结果
     */
    public int deleteFlowtempnodeByIds(String[] guids);

    public List<Flowtempnode> getDoneNodes(Flowtempnode node);

    public List<Flowtempnode> getUndoNodes(Flowtempnode node);

    public List<FlowTempNode> getPendingNodes(FlowTempNode node);
}
